/**
 *
 * Created by vimer on 15/8/25.
 */


var KeyValue = {
    get : function(key){
        return localStorage.getItem(key);
    } ,
    set : function(key, value){
        localStorage.setItem(key,value);
    }
};
Date.prototype.format = function(format) {
    /*
     * eg:format="YYYY-MM-dd hh:mm:ss";
     */
    var o = {
        "M+" :this.getMonth() + 1, // month
        "d+" :this.getDate(), // day
        "h+" :this.getHours(), // hour
        "m+" :this.getMinutes(), // minute
        "s+" :this.getSeconds(), // second
        "q+" :Math.floor((this.getMonth() + 3) / 3), // quarter
        "S" :this.getMilliseconds()
        // millisecond
    }

    if (/(y+)/.test(format)) {
        format = format.replace(RegExp.$1, (this.getFullYear() + "")
            .substr(4 - RegExp.$1.length));
    }

    for ( var k in o) {
        if (new RegExp("(" + k + ")").test(format)) {
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k]
                : ("00" + o[k]).substr(("" + o[k]).length));
        }
    }
    return format;
}

var Log = function(){
    var func = undefined;
    function getLocalTime(nS) {
        return  Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");
    }
    return {
        setLogger : function(f){
            func = f;
        },
        log : function(l){
            var   now = new Date().format("yyyy-MM-dd hh:mm:ss");
            var r  =  "<span class='green lighten-5'>[" + now + '] </span> ' + l;
            var c = "[" + now + "] " + l;
            console.log(c) ;
            if(func){
                func(r);
            }
        },
        serialLog : function(l){
            var   now = new Date().format("yyyy-MM-dd hh:mm:ss");
            var r  =  "<span class='green lighten-5'>[" + now + '] </span> ' + "<span class='grey lighten-3'>" + l + "</span>";
            var c = "[" + now + "]" + l;
            console.log(c) ;
            if(func){
                func(r);
            }

        }
    }
}();

